package zj.xinxin.api.moudle.security.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @author junzhou
 * @date 2022/4/8 23:11
 * @since 1.8
 */
@Data
public class UserInfoUpdateVo implements Serializable {

    @NotNull(message = "用户ID 不能为空！")
    @ApiModelProperty(value = "用户ID", name = "username", required = true, dataType = "String")
    private Integer userId;

    @NotBlank(message = "用户名不能为空！")
    @ApiModelProperty(value = "用户名", name = "username", required = true, dataType = "String")
    private String username;

    @NotBlank(message = "用户昵称不能为空！")
    @ApiModelProperty(value = "用户昵称", name = "name", required = true, dataType = "String")
    private String nickname;

    @ApiModelProperty(value = "密码", name = "password", required = true, dataType = "String")
    private String password;

    @ApiModelProperty(value = "确认密码", name = "confirmPwd", required = true, dataType = "String")
    private String confirmPwd;

    @ApiModelProperty(value = "头像地址", name = "avatar", required = false, dataType = "String")
    private String avatar;

    @ApiModelProperty(value = "邮箱地址", name = "email", required = false, dataType = "String")
    private String email;

    @ApiModelProperty(value = "电话号码", name = "phoneNum", required = false, dataType = "String")
    private String phoneNum;

    @ApiModelProperty(value = "性别", name = "gender", required = false, dataType = "Integer")
    private Integer gender;

    @ApiModelProperty(value = "备注信息", name = "remark", required = false, dataType = "String")
    private String remark;

    @ApiModelProperty(value = "角色 ID 信息")
    private Integer roleId;

}
